﻿using System;
namespace Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik {
    
    
    public partial class Annotatsioon : global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IAnnotatsioon {
        
        private System.Int64? @__objektID;
        
        private System.DateTime? @__algusKP;
        
        private string @__alustaja;
        
        private System.DateTime? @__loppKP;
        
        private string @__lopetaja;
        
        private System.DateTime? @__sulgemiseKP;
        
        private System.Int64? @__seisundKL;
        
        private string @__sisu;
        
        private System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMarksona> @__marksonad = new System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMarksona>();
        
        public Annotatsioon() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public Annotatsioon(System.Int64? @objektID, System.DateTime? @algusKP, string @alustaja, System.DateTime? @loppKP, string @lopetaja, System.DateTime? @sulgemiseKP, System.Int64? @seisundKL, string @sisu, System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMarksona> @marksonad) {
            this.@__objektID = @objektID;
            this.@__algusKP = @algusKP;
            this.@__alustaja = @alustaja;
            this.@__loppKP = @loppKP;
            this.@__lopetaja = @lopetaja;
            this.@__sulgemiseKP = @sulgemiseKP;
            this.@__seisundKL = @seisundKL;
            this.@__sisu = @sisu;
            this.@__marksonad = @marksonad;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected Annotatsioon(IAnnotatsioon @annotatsioon) {
            this.@__objektID = @annotatsioon.ObjektID;
            this.@__algusKP = @annotatsioon.AlgusKP;
            this.@__alustaja = @annotatsioon.Alustaja;
            this.@__loppKP = @annotatsioon.LoppKP;
            this.@__lopetaja = @annotatsioon.Lopetaja;
            this.@__sulgemiseKP = @annotatsioon.SulgemiseKP;
            this.@__seisundKL = @annotatsioon.SeisundKL;
            this.@__sisu = @annotatsioon.Sisu;
            this.@__marksonad = @annotatsioon.Marksonad;
        }
        
        public virtual System.Int64? ObjektID {
            get {
                return this.@__objektID;
            }
            set {
                this.@__objektID = value;
            }
        }
        
        public virtual System.DateTime? AlgusKP {
            get {
                return this.@__algusKP;
            }
            set {
                this.@__algusKP = value;
            }
        }
        
        public virtual string Alustaja {
            get {
                return this.@__alustaja;
            }
            set {
                this.@__alustaja = value;
            }
        }
        
        public virtual System.DateTime? LoppKP {
            get {
                return this.@__loppKP;
            }
            set {
                this.@__loppKP = value;
            }
        }
        
        public virtual string Lopetaja {
            get {
                return this.@__lopetaja;
            }
            set {
                this.@__lopetaja = value;
            }
        }
        
        public virtual System.DateTime? SulgemiseKP {
            get {
                return this.@__sulgemiseKP;
            }
            set {
                this.@__sulgemiseKP = value;
            }
        }
        
        public virtual System.Int64? SeisundKL {
            get {
                return this.@__seisundKL;
            }
            set {
                this.@__seisundKL = value;
            }
        }
        
        public virtual string Sisu {
            get {
                return this.@__sisu;
            }
            set {
                this.@__sisu = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMarksona> Marksonad {
            get {
                return this.@__marksonad;
            }
            set {
                this.@__marksonad = value;
            }
        }
    }
}
